package com.operate.api.operate.dramas.service;



import com.operate.api.app.dramas.domain.vo.*;
import com.operate.api.app.info.domain.vo.AppBannerSearchVO;
import com.operate.api.app.search.domain.vo.AppDramaSearchVO;
import com.operate.api.app.search.domain.vo.AppDramaVO;
import com.operate.api.operate.dramas.domain.vo.*;

import java.util.List;

public interface IDramasService {


    List<DramasVO> getList(DramasSearchVO searchVO);

    List<VideoVO> getVideoList(VideoSearchVO searchVO);

    void updateLines(DramasStateVO vo);

    List<DramaTrailersVO> getTrailersList(DramaTrailersSearchVO searchVO);

    List<DramaCompanyVO> getCompanyDramas(DramaCompanySearchVO searchVO);

    List<AppDramaVO> getAppDramaList(AppDramaSearchVO searchVO);

    List<AppVideoVO> getAppVideoList(AppVideoSearchVO searchVO);

    void cancelPlays();

    List<AppVideoPlayLogVO> getAppPlayList(AppVideoPlayLogSearchVO searchVO);

    void likeVideo(AppVideoLikeVO vo);

    void playVideo(AppVideoPlayVO vo);

    void payVideo(AppVideoConsumeVO vo);

    Boolean checkCollect(AppCollectVO vo);

    void addCollect(AppCollectVO vo);

    void cancelCollect(AppCollectVO vo);

    Boolean checkLikeVideo(AppVideoLikeVO vo);

    void cancelLikeVideo(AppVideoLikeVO vo);

    void playDrama(AppDramasPlayVO vo);

    Integer getLikeNum();

    Integer getPlayNum();

    Integer getCollectNum();

    List<AppVideoPlayLogVO> getAppLikeList(AppVideoPlayLogSearchVO searchVO);

    List<DramaCompanyVO> getCollectList(DramaCollectSearchVO searchVO);

    Integer geDramasCollectNum(String id);

    AppVideoVO getAppVideoOne(String id);

    List<AppVideoVO> getRandomVideoList(AppRandomVideoSearchVO searchVO);

    List<AppVideoPlayLogVO> getAppPlayDramaList(AppVideoPlayLogSearchVO searchVO);

    DramaTrailersVO getTrailersDesc(String id);
}
